
package com.insigma.business.qrcode.soldier._provider;



import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.CommonSmsPoolDTO;
import com.insigma.business.qrcode.soldier.request.BaseGetRequest;
import com.insigma.business.qrcode.soldier.request.CommonSmsPoolInsertRequest;
import com.insigma.business.qrcode.soldier.request.CommonSmsPoolSearchRequest;
import com.insigma.business.qrcode.soldier.request.CommonSmsPoolUpdateRequest;

import java.util.List;


public interface CommonSmsPoolProvider {

    
    BasePagingResponse<List<CommonSmsPoolDTO>> searchCommonSmsPool(final CommonSmsPoolSearchRequest commonSmsPoolSearchRequest);

    
    BaseResponse<List<CommonSmsPoolDTO>> listByAreaUsed(final CommonSmsPoolSearchRequest commonSmsPoolSearchRequest);

   
    BaseResponse<CommonSmsPoolDTO> getCommonSmsPool(final BaseGetRequest baseGetRequest);

    
    BaseResponse<String> insertCommonSmsPool(final CommonSmsPoolInsertRequest commonSmsPoolInsertRequest);

    
    BaseResponse<Integer> updateCommonSmsPool(final CommonSmsPoolUpdateRequest commonSmsPoolUpdateRequest);

    
    BaseResponse<Integer> setAsUsed(final CommonSmsPoolUpdateRequest commonSmsPoolUpdateRequest);

    
    BaseResponse<Integer> deleteCommonSmsPool(final BaseDeleteRequest deleteRequest);

}
